home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-04 / netprog.zip / NETPROG.TAR / lib / writen.c < prev   
Text File  |  1989-12-17  |  412b  |  25 lines

  1. /*
  2.  * Write "n" bytes to a descriptor.
  3.  * Use in place of write() when fd is a stream socket.
  4.  */
  5.  
  6. int
  7. writen(fd, ptr, nbytes)
  8. register int    fd;
  9. register char    *ptr;
  10. register int    nbytes;
  11. {
  12.     int    nleft, nwritten;
  13.  
  14.     nleft = nbytes;
  15.     while (nleft > 0) {
  16.         nwritten = write(fd, ptr, nleft);
  17.         if (nwritten <= 0)
  18.             return(nwritten);        /* error */
  19.  
  20.         nleft -= nwritten;
  21.         ptr   += nwritten;
  22.     }
  23.     return(nbytes - nleft);
  24. }
  25.